It is known to use a crankshaft sensor to determine a crank angle of an internal combustion engine crankshaft for providing engine control timing information as part of controlling an engine combustion cycle. Such timing information is, for example, useful to control the timing of dispensing fuel by a fuel injector, or control the timing of a spark ignition device. It is desirable to know the stopped engine crank angle after an engine is stopped to facilitate restarting the engine. If the stopped engine crank angle is known prior to restarting the engine, engine cranking time and engine emissions may be reduced. Crank angle and crank speed of a running engine are determined using various types of crankshaft sensors including variable reluctance (VR) type sensors, Hall effect type sensors, and inductive type sensors. However, while such sensors are an economical choice for determining crank angle and crank speed, they do not readily indicate crank angle when the crankshaft is not rotating. Furthermore, such sensors do not indicate the direction of crankshaft rotation, as is needed if engine bounce-back occurs when the engine is stopped. Engine bounce-back occurs when the content of a cylinder is compressed just as the engine stops which may then cause the engine to rotate in a direction that is opposite of the normal engine running direction. Furthermore, such sensors may output a signal having an amplitude that is too low to be reliably detected when the engine speed is low, such as less than 50 revolutions per minute, as would occur when the engine is being stopped.
A number of methods for determining the stopped engine crank angle using such crankshaft sensors have been proposed. For example, U.S. Pat. No. 7,142,973 to Ando suggests a method that controls when the initiation of stopping an engine occurs so that the engine coasts to a stop in more predictable manner. However, Ando uses a predetermined coast-down model that relies on the engine being properly warmed up and operating at nominal operating conditions to coast-down to a stop in a predictable manner. If the engine is not warmed up, or not operating at nominal conditions, Ando's model is not accurate so Ando does not attempt to determine a stopped engine crank angle. Furthermore, Ando is silent with regard to the effect of engine bounce-back. U.S. Pat. No. 7,011,063 to Condemine et al. suggests another method that delivers fuel to at least one cylinder while the engine is coasting to a stop to more accurately control the coast-down process. However, such a method may increase fuel consumption and increase engine emissions due to incomplete fuel combustion. Like Ando, Condemine also relies on a predetermined coast-down model to predict the engine stopped crank angle and does not consider the effect of engine bounce-back. U.S. Pat. No. 6,499,342 to Gonzales monitors the amplitude and period of a variable reluctance sensor signal to estimate the stopped engine crank angle. However, analyzing such a signal in the manner described adds cost and complexity to the signal processing electronics. Also, like Ando and Condemine, Gonzales does not address the effect of engine bounce-back.